package com.yunxin.common.utils.oss;

import lombok.Getter;
import lombok.RequiredArgsConstructor;

/**
 * 图片缩放模式
 * @author zero°
 * @since 2023-06-05
 */
@Getter
@RequiredArgsConstructor
public enum OssPhotoResizeModeEnum {

    /**
     * 等比缩放，缩放图限制为指定w与h的矩形内的最大图片
     */
    L_FIT("lfit", "等比缩放，缩放图限制为指定w与h的矩形内的最大图片"),

    /**
     * 等比缩放，缩放图为延伸出指定w与h的矩形框外的最小图片
     */
    M_FIT("mfit", "等比缩放，缩放图为延伸出指定w与h的矩形框外的最小图片"),

    /**
     * 将原图等比缩放为延伸出指定w与h的矩形框外的最小图片，之后将超出的部分进行居中裁剪
     */
    FILL("fill", "将原图等比缩放为延伸出指定w与h的矩形框外的最小图片，之后将超出的部分进行居中裁剪"),

    /**
     * 将原图缩放为指定w与h的矩形内的最大图片，之后使用指定颜色居中填充空白部分
     */
    PAD("pad", "将原图缩放为指定w与h的矩形内的最大图片，之后使用指定颜色居中填充空白部分"),

    /**
     * 固定宽高，强制缩放
     */
    FIXED("fixed", "固定宽高，强制缩放"),

    ;

    private final String mode;
    private final String description;
}
